package com.itheima.d4_enum;
/*
    1 枚举
        枚举是一种特殊类。
    2 枚举类的格式
        修饰符 enum 枚举类名{
            枚举项 ,  枚举项 , ... ;
            其他成员…
        }
    3 枚举的注意事项
        1) 枚举类中的第一行，只能写一些合法的标识符(名称)，多个名称用逗号隔开。
        2) 这些名称，本质是常量，每个常量都是此枚举类的一个对象。

    4 枚举的细节
        1) 枚举类的第一行只能罗列一些名称，这些名称都是常量，并且每个常量记住的都是枚举类的一个对象。
        2) 枚举类的构造器都是私有的（写不写都只能是私有的），因此，枚举类对外不能创建对象。
        3) 枚举都是最终类，不可以被继承。
        4) 枚举类中，从第二行开始，可以定义类的其他各种成员。
        5) 编译器为枚举类新增了几个方法，并且枚举类都是继承：java.lang.Enum类的，从enum类也会继承到一些方法。

 */
public class Test1 {
    public static void main(String[] args) {
        //调用枚举类对象用spring接收
        MeiJu pring = MeiJu.summer;
        //调用方法
        String desc = pring.getDesc();
        System.out.println(desc);
        //调用方法
        pring.showInfo();
        //枚举类特有方法
        MeiJu[] values = MeiJu.values();
        //遍历数组      把枚举类中的全部对象存入数组中
        for (int i = 0; i < values.length; i++) {
            MeiJu value = values[i];
            //每个对象调用方法
            value.showInfo();
        }

       //枚举特有方法     获取枚举类第一行对象的索引
        int ordinal = pring.ordinal();
        System.out.println(ordinal);

        System.out.println(pring);

    }
}
